package com.hong.qrpc;

import java.io.InputStream;

/**
 * @Author HQT
 * @Data 2022/7/10 9:48
 * 执行流程：
 * 1.创建连接
 * 2.发送数据并等待响应
 * 3.关闭连接
 */
public interface TransportClient {
    /**
     * 创建连接
     *
     * @param peer 网络端点对象
     */
    void connect(Peer peer);

    /**
     * 写入数据
     *
     * @param data 写入的数据
     * @return 响应的数据
     */
    InputStream write(InputStream data, int serializationType, long timeout);

    /**
     * 关闭连接
     */
    void close();
}
